package main

import (
	"go-xorm-01/utils"
	"time"
	"xorm.io/xorm/names"
)

func main() {
	setMapper()
}

// https://xorm.io/zh/docs/chapter-02/4.columns/
func setMapper() {
	engine := utils.GenerateEngine()
	engine.SetMapper(names.SnakeMapper{}) // SnakeMapper 【默认】
	// 自动同步结构体到数据库,见sql.sql
	engine.Sync2(new(UserColumn))

}

// UserColumn
// @Description: Column 属性定义：我们在 field 对应的 Tag 中对 Column 的一些属性进行定义，定义的方法基本和我们写SQL定义表结构类似，比如
// 详见：https://xorm.io/zh/docs/chapter-02/4.columns/
// Go与字段类型对应表：https://xorm.io/zh/docs/chapter-02/5.types/
type UserColumn struct {
	ID            int64
	Username      string `xorm:"varchar(25) notnull unique 'u_name' comment('姓名')"`
	Password      string
	RegisterTime  time.Time
	LastLoginTime time.Time
}
